home *** CD-ROM | disk | FTP | other *** search
/ FishMarket 1.0 / FishMarket v1.0.iso / fishies / 076-100 / disk_096 / animplayer / manual.c < prev    next >
C/C++ Source or Header  |  1992-05-06  |  2KB  |  81 lines

  1. /************************************************************
  2.  *
  3.  *   NAME
  4.  *      Manual -- view frames without recording
  5.  *
  6.  *   SYNOPSIS
  7.  *      status = Manual( rastport, viewport );
  8.  *
  9.  *      BOOL status;
  10.  *
  11.  *      struct RastPort *rastport;
  12.  *      struct ViewPort *viewport;
  13.  *
  14.  *   DESCRIPTION
  15.  *      This function allows the current frame to be viewed without
  16.  *      being saved to videotape.  The left mouse button terminates.  
  17.  *
  18.  *      copyright (c) 1987 Martin D. Hash
  19.  *
  20.  *   LAST EDITED
  21.  *      Martin Hash             28 Mar 1987
  22.  *
  23.  *   EDIT HISTORY
  24.  *       8 Sep 1986  MH  Created.
  25.  *      10 Oct             Renamed.
  26.  *
  27.  **********************************************************/
  28.  
  29. #include <exec/types.h>
  30. #include <intuition/intuition.h>
  31.  
  32. /* LOCAL CONSTANTS */
  33.  
  34. #define SPACE        0x40
  35.  
  36. /* EXTERNAL VARIABLES */
  37.  
  38. extern struct Window *window;
  39.  
  40. /* FUNCTION */
  41.  
  42. BOOL Manual( rastport, viewport )
  43.  
  44. struct RastPort *rastport;
  45. struct ViewPort *viewport;
  46. {
  47.    /* LOCAL VARIABLES */
  48.  
  49.    struct IntuiMessage *message;
  50.    ULONG class;
  51.    UWORD code;
  52.  
  53.    /* CODE */
  54.  
  55.    window->Flags |= RMBTRAP;
  56.    
  57.    while (TRUE) {
  58.       Wait( 1<<window->UserPort->mp_SigBit );
  59.  
  60.       while( message = (struct IntuiMessage *) GetMsg( window->UserPort )) {
  61.          class = message->Class;
  62.          code = message->Code;
  63.  
  64.          ReplyMsg( message );
  65.          switch (class) {
  66.             case MOUSEBUTTONS:         
  67.                switch (code) {
  68.           case MENUDOWN:
  69.              window->Flags &= (0xFFFFFFFF^RMBTRAP);
  70.              return TRUE;
  71.              break;
  72.           case SELECTDOWN:
  73.              window->Flags &= (0xFFFFFFFF^RMBTRAP);
  74.              return FALSE;
  75.              break;
  76.              }
  77.          }
  78.       }
  79.    }
  80. }
  81.